import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 言初
 * Date: 2023-04-14
 * Time: 11:11
 */
import java.util.*;
public class Test {
    public static void main5(String[] args) {
        //让数组从大到小进行排序
        // 76.6  45.2  7.2  3.1  3.1  2.8  1.4
        Double[] array={3.1,45.2,1.4,76.6,3.1,7.2,2.8};


        func2(array);
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+"  ");
        }
    }
    public static void func2(Double[] array){
        //对Double 类型数组进行  从大到小排序
        int len=array.length;
        for(int i=0;i<len;i++){
            for(int j=i;j<len;j++){
                if(array[i]<array[j]){
                    double tmp=array[i];
                    array[i]=array[j];
                    array[j]=tmp;
                }
            }
        }
    }



    public static void main3(String[] args) {
        //让数组从小到大进行排序
        Double[] array={3.1,45.2,1.4,76.6,3.1,7.2,2.8};
        // 1.4  2.8  3.1  3.1  7.2  45.2  76.6

        func1(array);
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+"  ");
        }
    }
    public static void func1(Double[] array){
        //对Double 类型数组进行  从小到大排序
        int len=array.length;
        for(int i=0;i<len;i++){
            for(int j=i;j<len;j++){
                if(array[i]>array[j]){
                    double tmp=array[i];
                    array[i]=array[j];
                    array[j]=tmp;
                }
            }
        }
    }


    public static void main4(String[] args) {
        //使用lambda表达式来：让Double类型数组从小到大进行排序
        Double[] array={3.1,45.2,1.4,76.6,3.1,7.2,2.8};
        //  1.4  2.8  3.1  3.1  7.2  45.2  76.6
        Arrays.sort(array);
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+"  ");
        }
    }


    public static void main2(String[] args) {
        //使用lambda表达式来：让Double类型数组从大到小进行排序
        Double[] array={3.1,45.2,1.4,76.6,3.1,7.2,2.8};
        Arrays.sort(array,(a,b) -> b.compareTo(a));
        //  76.6  45.2  7.2  3.1  3.1  2.8  1.4
        //Arrays.sort(array,(a,b)->Double.compare(b,a));
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+"  ");
        }
    }




    public static void main1(String[] args) {
        //使用lambda表达式来：让Integer类型数组从大到小进行排序
        Integer[] array={3,45,1,76,3,7,2};
        //  76  45  7  3  3  2  1
        //Arrays.sort(array,(a,b)->b-a);
        //Arrays.sort(array,(a,b) -> b.compareTo(a));
        Arrays.sort(array,(a,b)->Integer.compare(b,a));
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+"  ");
        }
    }
}
